服务热线
上线两周后整批页面消失,不是流量掉了几名,而是从收录里直接被抹掉。原本排在首页的那批核心地址,品牌词搜不到、整站名也搜不到。运营先看内容有没有被改,再看服务器有没有宕,最后在搜索资源平台点开「网址审查」,状态栏写着「被 robots.txt 排除」——而这批页面,前一天还每天带来两百多个询盘。
别急着改文件。第一步要把那批消失的 URL 逐个放进审查工具,看「抓取」详情里是否真的写着「robots.txt 目前不许抓取」。有三类误报要先排除:一是页面本身带了 noindex 元标签,平台会归到另一类原因;二是服务器返回 500 或超时,爬虫压根没读到 robots;三是 canonical 指向了别处,页面被并到另一个地址。只有原因栏明确指向 robots.txt,才往下追。这一步直接看平台自带的「被屏蔽的网页数」报告最省事,不用自己猜。
把线上 robots.txt 直接打开,最常见的凶手是这么一行:Disallow: /。它是整站禁止指令,一旦存在,搜索引擎连 sitemap 里列着的地址都不会抓。很多做网页制作的小团队,把 robots 当成上线后才想起的附件,开发在测试环境为了防被抓写过这条,上线时没人把它删掉,于是保护测试站的锁被原样带到了生产站。还有一种半屏蔽写法:Disallow: /*? 本意是拦掉带参数的重复页,结果通配符把一批产品详情也一起拦了。
因为 sitemap 和 robots 在搜索引擎眼里是两套互不相干的文档,而且 robots 的优先级更高。sitemap.xml 里明明白白列着那批页面的地址,提交上去等于告诉搜索引擎「这些页重要,来抓」,可 robots 又说「不许抓」,两边打架时爬虫听 robots 的。于是你交的清单越完整,被排除的页面就越多——当清单和禁令是同一个 URL 集合,整批消失就成了必然。网页制作阶段如果只管把地址写进 sitemap,却没人核对 robots 是否放行,这个坑迟早踩。
再往下挖一层:为什么没人发现冲突?因为团队把 robots 和 sitemap 交给两个人、或者两个时期维护,发布检查表里没有「sitemap 每个 URL 是否都被 robots 放行」这一项。更深的 root cause 是测试环境与生产环境共用同一份配置模板,没有「上线即清空测试期保护指令」的强制步骤。网页制作收尾时顺手贴一条 Disallow 兜底,本意是防抓取,结果把正在赚钱的页面也关在了门外。配置冲突不是某次手滑,而是流程里缺了一道闸门。
可立即执行:把 sitemap 里全部 URL 读出来,逐条对照 robots 的 Allow 与 Disallow 规则。命中 Disallow 的,二选一处理——要么从 sitemap 删掉这条,要么把 robots 里对应的路径改成 Allow。判定顺序要固定:先看有没有更具体的 Allow 覆盖 Disallow,再看通配符范围是不是过大。做网页制作的中小站点,地址在三百条以内时,用一段十来行的脚本就能扫完,跑一次不超过两分钟;地址过万的,按栏目分批扫,重点先扫带来流量的那两成页面。核对结果留个记录,上线前签字。
最根本的一招是把环境分开:测试环境 robots 写 Disallow: / 完全没问题,但生产环境必须有一份独立文件,部署流水线里加一步「用生产版覆盖测试版」,而不是靠人手动删那一行。真正专业的网页制作流程,会把这份覆盖写进发布脚本,每次上线自动带上正确版本,避免谁的本地改动漏提交。如果暂时改不了流水线,至少在发布清单里加一条「确认生产 robots 已覆盖」,负责人签字前不许跳过。
把高频雷区列成清单,每次发布前过一遍。第一,sitemap 含了带 noindex 的页,等于自己举报自己不收录;第二,sitemap 里用 http 地址,但页面 canonical 是 https,爬虫按 https 抓、按 http 比对,对不上;第三,robots 把 CSS 和 JS 目录也 Disallow 了,爬虫渲染不出页面,移动端体验分直接掉;第四,sitemap 混进了 /page/2、/page/3 这类分页,和首页内容重复;第五,带 ?sort= 或 ?ref= 的跟踪参数页被写进 sitemap,制造一堆重复地址。这五条占实际事故的八成以上,逐条划掉比通读全文省事。
别等流量掉了才发现。新站或改版上线后的四十八小时,每天打开平台的「被 robots.txt 屏蔽的网页」报告看一眼,如果屏蔽数突然从个位数跳到几百,立刻回查 robots。对只做过展示型网页制作、没接触过产品库的人来说,最容易忽略的就是这条——以为交了 sitemap 就万事大吉,结果禁令一直在生效。养成习惯:提交 sitemap 的同一天,顺手验一条 sitemap 里的 URL 能否被抓取,十分钟就能排掉大雷。
当你下次准备加一行 Disallow,不管是防抓取还是图省事,先停一下问一句:这条指令会不会把已经写在 sitemap 里、且正在带来流量的页面也一起关在门外?如果答不上来,就先别动,先把 sitemap 拉出来对一遍。对得清,才动手;对不清,那条指令就没有上的理由。
地址:江苏天圣达科技创新中心B栋901
电话:133 0619 4366 / 189-2129-2689
邮箱:sales@jizankeji.com

